//
//  HSMessageCell.swift
//  HomeSchoolDemo
//
//  Created by rimi on 16/10/10.
//  Copyright © 2016年 赖虹宇. All rights reserved.
//

import UIKit

/*
 表格视图的性能优化(性能调优)
 1.所有的图片不要使用系统原生的裁剪圆角模式
 2.尽量不要使用透明设置
 3.所有参数提前准备好,在需要的时候直接获取使用
 4.包括视图尽量不要使用延时加载，都提前准备好
 
 */

//用于回调点赞和回复按钮事件的闭包类型
typealias CellBtncallBack = (_ cell:UITableViewCell) -> ()


class HSMessageCell: UITableViewCell {
    //头像
    @IBOutlet weak var messageIconV: UIImageView!
    //用户名字
    @IBOutlet weak var messageUserNameL: UILabel!
    //用户类型
    @IBOutlet weak var messageUserTypeL: UILabel!
    //发布时间
    @IBOutlet weak var messagedateL: UILabel!
    //标题
    @IBOutlet weak var messageTitleL: UILabel!
    //详细文本
    @IBOutlet weak var messageContentL: UILabel!
    //点赞
    @IBOutlet weak var messageLikeBtn: UIButton!
    //回复背景视图
    @IBOutlet weak var messageReplayBgV: HSReplayView!
   
    @IBOutlet weak var messageRepalyViewH: NSLayoutConstraint!
    
    //点赞按钮回调闭包
    var likeBtnCallBack : CellBtncallBack?
    //回复按钮回调闭包
    var replayBtnCallBack : CellBtncallBack?
    
    //数据模型(消息视图模型)
    var messageVM : HSMessageViewModel? {
        didSet {
            //设置头像 拼接头像地址
            let iconImageUrl = "http://120.24.57.38/new/zao/" + (messageVM?.message.not_tpath ?? "")
                messageIconV.hy_lsetImage(url: iconImageUrl, placeholderImage: "boy", size: messageIconV.frame.size)

  
            
            messageUserNameL.text = messageVM?.message.not_Name
            messageUserTypeL.text = messageVM?.message.not_courseName
            messagedateL.text = messageVM?.message.not_createDate
            messageTitleL.text = messageVM?.message.not_title
            messageContentL.text = messageVM?.message.not_content
            //设置点赞按钮
            let likeN = messageVM?.message.likenum ?? 0
            if likeN > 0 {
                messageLikeBtn.setTitle("\(likeN)", for: .selected)
                messageLikeBtn.isSelected = true //显示选择状态下
            }else {
                messageLikeBtn.isSelected = false
            }
            //传递模型给回复视图
            messageReplayBgV.messageVM = messageVM
            //设置高度
            messageRepalyViewH.constant = messageVM?.replayViewH ?? 0
            
        }
    }
    
    
    override func awakeFromNib() {
        super.awakeFromNib()
//        //设置圆角
//        messageIconV.layer.cornerRadius = 25
//        messageIconV.layer.masksToBounds = true
        //设置用户类型视图边框
        messageUserTypeL.layer.cornerRadius = 8
        messageUserTypeL.layer.borderWidth = 1
        messageUserTypeL.layer.borderColor = UIColor().colorWithHex(0x00a0e9).cgColor

    }
    //点赞按钮监听时间回调
    @IBAction func messageLikeBtnClicked(_ sender: UIButton) {
       likeBtnCallBack?(self)
        
    }

    //回复按钮监听事件回调
    @IBAction func messageReplayBtnClicked(_ sender: UIButton) {
      replayBtnCallBack?(self)
        
    }
   
    
    
}
